Apg-Cii
Apg Cad Instructions Interpreter

Viewer

Layers

 

Cad test settings

 
Doors on side view Apg Svg Cad Instr. Interp. -1000 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 0 1000 2000 3000 4000 5000 Doors on side view Apg Svg Cad Instr. Interp. 2026-01-29T00:25:31.297Z

Logger

0000 0.00000 0.00000   1    ApgCii.constructor{ 
0001 0.00000 0.00000 1 }
0002 0.00000 0.00000 1 ApgCii.set{
0003 0.00000 0.00000 2 ApgCii.#validateAndSet{
0004 0.00200 0.00200 2 }
0005 0.00200 0.00000 1 }
0006 0.00200 0.00000 1 ApgCii.build{
0007 0.00200 0.00000 2 ApgCii.setupBegin{
0008 0.00200 0.00000 2 > 1: SETUP_BEGIN
0009 0.00200 0.00000 2 }
0010 0.00200 0.00000 2 ApgCii.setName_{
0011 0.00200 0.00000 2 > 2: SET_NAME
0012 0.00200 0.00000 2 }
0013 0.00200 0.00000 2 ApgCii.setupEnd{
0014 0.00400 0.00200 2 > 3: SETUP_END
0015 0.00400 0.00000 2 }
0016 0.00400 0.00000 2 ApgCii.newPoint_{
0017 0.00400 0.00000 2 > 4: NEW_POINT - ZERO
0018 0.00400 0.00000 2 }
0019 0.00400 0.00000 2 ApgCii.newPoint_{
0020 0.00400 0.00000 2 > 5: NEW_POINT - Door1_O
0021 0.00400 0.00000 2 }
0022 0.00400 0.00000 2 ApgCii.groupBegin_{
0023 0.00400 0.00000 2 > 6: GROUP_BEGIN
0024 0.00400 0.00000 2 }
0025 0.00400 0.00000 2 ApgCii.newPointByDelta_{
0026 0.00400 0.00000 2 > 7: NEW_POINT_DELTA - Door1_BL
0027 0.00600 0.00200 2 }
0028 0.00600 0.00000 2 ApgCii.newPointByDelta_{
0029 0.00600 0.00000 2 > 8: NEW_POINT_DELTA - Door1_BR
0030 0.00600 0.00000 2 }
0031 0.00600 0.00000 2 ApgCii.newPointByDelta_{
0032 0.00600 0.00000 2 > 9: NEW_POINT_DELTA - Door1_TR
0033 0.00600 0.00000 2 }
0034 0.00600 0.00000 2 ApgCii.newPointByDelta_{
0035 0.00600 0.00000 2 > 10: NEW_POINT_DELTA - Door1_TL
0036 0.00600 0.00000 2 }
0037 0.00600 0.00000 2 ApgCii.newPointByDelta_{
0038 0.00600 0.00000 2 > 11: NEW_POINT_DELTA - Door1_ML
0039 0.00600 0.00000 2 }
0040 0.00600 0.00000 2 ApgCii.newPointByDelta_{
0041 0.00800 0.00200 2 > 12: NEW_POINT_DELTA - Door1_MR
0042 0.00800 0.00000 2 }
0043 0.00800 0.00000 2 ApgCii.newPointByDelta_{
0044 0.00800 0.00000 2 > 13: NEW_POINT_DELTA - Door1_TO
0045 0.00800 0.00000 2 }
0046 0.00800 0.00000 2 ApgCii.newPointByDelta_{
0047 0.00800 0.00000 2 > 14: NEW_POINT_DELTA - Door1_BO
0048 0.00800 0.00000 2 }
0049 0.00800 0.00000 2 ApgCii.#drawRectangleBySizes{
0050 0.00800 0.00000 2 > 15: DRAW_RECTANGLE_SIZE
0051 0.00800 0.00000 2 }
0052 0.01000 0.00200 2 ApgCii.#drawPolyLine{
0053 0.01000 0.00000 2 > 16: DRAW_POLYLINE
0054 0.01000 0.00000 3 ApgCii.#getPointsByNames{
0055 0.01000 0.00000 3 }
0056 0.01000 0.00000 2 }
0057 0.01000 0.00000 2 ApgCii.#drawPolyLine{
0058 0.01000 0.00000 2 > 17: DRAW_POLYLINE
0059 0.01000 0.00000 3 ApgCii.#getPointsByNames{
0060 0.01000 0.00000 3 }
0061 0.01000 0.00000 2 }
0062 0.01000 0.00000 2 ApgCii.groupEnd_{
0063 0.01200 0.00200 2 > 18: GROUP_END
0064 0.01200 0.00000 2 }
0065 0.01200 0.00000 2 ApgCii.newPoint_{
0066 0.01200 0.00000 2 > 19: NEW_POINT - Door2_O
0067 0.01200 0.00000 2 }
0068 0.01200 0.00000 2 ApgCii.groupBegin_{
0069 0.01200 0.00000 2 > 20: GROUP_BEGIN
0070 0.01200 0.00000 2 }
0071 0.01200 0.00000 2 ApgCii.newPointByDelta_{
0072 0.01200 0.00000 2 > 21: NEW_POINT_DELTA - Door2_BL
0073 0.01200 0.00000 2 }
0074 0.01200 0.00000 2 ApgCii.newPointByDelta_{
0075 0.01400 0.00200 2 > 22: NEW_POINT_DELTA - Door2_BR
0076 0.01400 0.00000 2 }
0077 0.01400 0.00000 2 ApgCii.newPointByDelta_{
0078 0.01400 0.00000 2 > 23: NEW_POINT_DELTA - Door2_TR
0079 0.01400 0.00000 2 }
0080 0.01400 0.00000 2 ApgCii.newPointByDelta_{
0081 0.01400 0.00000 2 > 24: NEW_POINT_DELTA - Door2_TL
0082 0.01400 0.00000 2 }
0083 0.01400 0.00000 2 ApgCii.newPointByDelta_{
0084 0.01400 0.00000 2 > 25: NEW_POINT_DELTA - Door2_ML
0085 0.01400 0.00000 2 }
0086 0.01600 0.00200 2 ApgCii.newPointByDelta_{
0087 0.01600 0.00000 2 > 26: NEW_POINT_DELTA - Door2_MR
0088 0.01600 0.00000 2 }
0089 0.01600 0.00000 2 ApgCii.newPointByDelta_{
0090 0.01600 0.00000 2 > 27: NEW_POINT_DELTA - Door2_TO
0091 0.01600 0.00000 2 }
0092 0.01600 0.00000 2 ApgCii.newPointByDelta_{
0093 0.01600 0.00000 2 > 28: NEW_POINT_DELTA - Door2_BO
0094 0.01600 0.00000 2 }
0095 0.01600 0.00000 2 ApgCii.#drawRectangleBySizes{
0096 0.01600 0.00000 2 > 29: DRAW_RECTANGLE_SIZE
0097 0.01600 0.00000 2 }
0098 0.01600 0.00000 2 ApgCii.#drawPolyLine{
0099 0.01800 0.00200 2 > 30: DRAW_POLYLINE
0100 0.01800 0.00000 3 ApgCii.#getPointsByNames{
0101 0.01800 0.00000 3 }
0102 0.01800 0.00000 2 }
0103 0.01800 0.00000 2 ApgCii.#drawPolyLine{
0104 0.01800 0.00000 2 > 31: DRAW_POLYLINE
0105 0.01800 0.00000 3 ApgCii.#getPointsByNames{
0106 0.01800 0.00000 3 }
0107 0.01800 0.00000 2 }
0108 0.01800 0.00000 2 ApgCii.groupEnd_{
0109 0.01800 0.00000 2 > 32: GROUP_END
0110 0.01800 0.00000 2 }
0111 0.01800 0.00000 2 ApgCii.newPoint_{
0112 0.02000 0.00200 2 > 33: NEW_POINT - Door3_O
0113 0.02000 0.00000 2 }
0114 0.02000 0.00000 2 ApgCii.groupBegin_{
0115 0.02000 0.00000 2 > 34: GROUP_BEGIN
0116 0.02000 0.00000 2 }
0117 0.02000 0.00000 2 ApgCii.newPointByDelta_{
0118 0.02000 0.00000 2 > 35: NEW_POINT_DELTA - Door3_BL
0119 0.02000 0.00000 2 }
0120 0.02000 0.00000 2 ApgCii.newPointByDelta_{
0121 0.02000 0.00000 2 > 36: NEW_POINT_DELTA - Door3_BR
0122 0.02000 0.00000 2 }
0123 0.02000 0.00000 2 ApgCii.newPointByDelta_{
0124 0.02000 0.00000 2 > 37: NEW_POINT_DELTA - Door3_TR
0125 0.02000 0.00000 2 }
0126 0.02200 0.00200 2 ApgCii.newPointByDelta_{
0127 0.02200 0.00000 2 > 38: NEW_POINT_DELTA - Door3_TL
0128 0.02200 0.00000 2 }
0129 0.02200 0.00000 2 ApgCii.newPointByDelta_{
0130 0.02200 0.00000 2 > 39: NEW_POINT_DELTA - Door3_ML
0131 0.02200 0.00000 2 }
0132 0.02200 0.00000 2 ApgCii.newPointByDelta_{
0133 0.02200 0.00000 2 > 40: NEW_POINT_DELTA - Door3_MR
0134 0.02200 0.00000 2 }
0135 0.02200 0.00000 2 ApgCii.newPointByDelta_{
0136 0.02200 0.00000 2 > 41: NEW_POINT_DELTA - Door3_TO
0137 0.02200 0.00000 2 }
0138 0.02200 0.00000 2 ApgCii.newPointByDelta_{
0139 0.02200 0.00000 2 > 42: NEW_POINT_DELTA - Door3_BO
0140 0.02400 0.00200 2 }
0141 0.02400 0.00000 2 ApgCii.#drawRectangleBySizes{
0142 0.02400 0.00000 2 > 43: DRAW_RECTANGLE_SIZE
0143 0.02400 0.00000 2 }
0144 0.02400 0.00000 2 ApgCii.#drawPolyLine{
0145 0.02400 0.00000 2 > 44: DRAW_POLYLINE
0146 0.02400 0.00000 3 ApgCii.#getPointsByNames{
0147 0.02400 0.00000 3 }
0148 0.02400 0.00000 2 }
0149 0.02400 0.00000 2 ApgCii.#drawPolyLine{
0150 0.02400 0.00000 2 > 45: DRAW_POLYLINE
0151 0.02400 0.00000 3 ApgCii.#getPointsByNames{
0152 0.02400 0.00000 3 }
0153 0.02600 0.00200 2 }
0154 0.02600 0.00000 2 ApgCii.groupEnd_{
0155 0.02600 0.00000 2 > 46: GROUP_END
0156 0.02600 0.00000 2 }
0157 0.02600 0.00000 2 ApgCii.newPoint_{
0158 0.02600 0.00000 2 > 47: NEW_POINT - Door4_O
0159 0.02600 0.00000 2 }
0160 0.02600 0.00000 2 ApgCii.groupBegin_{
0161 0.02600 0.00000 2 > 48: GROUP_BEGIN
0162 0.02600 0.00000 2 }
0163 0.02600 0.00000 2 ApgCii.newPointByDelta_{
0164 0.02600 0.00000 2 > 49: NEW_POINT_DELTA - Door4_BL
0165 0.02600 0.00000 2 }
0166 0.02800 0.00200 2 ApgCii.newPointByDelta_{
0167 0.02800 0.00000 2 > 50: NEW_POINT_DELTA - Door4_BR
0168 0.02800 0.00000 2 }
0169 0.02800 0.00000 2 ApgCii.newPointByDelta_{
0170 0.02800 0.00000 2 > 51: NEW_POINT_DELTA - Door4_TR
0171 0.02800 0.00000 2 }
0172 0.02800 0.00000 2 ApgCii.newPointByDelta_{
0173 0.02800 0.00000 2 > 52: NEW_POINT_DELTA - Door4_TL
0174 0.02800 0.00000 2 }
0175 0.02800 0.00000 2 ApgCii.newPointByDelta_{
0176 0.02800 0.00000 2 > 53: NEW_POINT_DELTA - Door4_ML
0177 0.02800 0.00000 2 }
0178 0.02800 0.00000 2 ApgCii.newPointByDelta_{
0179 0.03000 0.00200 2 > 54: NEW_POINT_DELTA - Door4_MR
0180 0.03000 0.00000 2 }
0181 0.03000 0.00000 2 ApgCii.newPointByDelta_{
0182 0.03000 0.00000 2 > 55: NEW_POINT_DELTA - Door4_TO
0183 0.03000 0.00000 2 }
0184 0.03000 0.00000 2 ApgCii.newPointByDelta_{
0185 0.03000 0.00000 2 > 56: NEW_POINT_DELTA - Door4_BO
0186 0.03000 0.00000 2 }
0187 0.03000 0.00000 2 ApgCii.#drawRectangleBySizes{
0188 0.03000 0.00000 2 > 57: DRAW_RECTANGLE_SIZE
0189 0.03000 0.00000 2 }
0190 0.03000 0.00000 2 ApgCii.#drawPolyLine{
0191 0.03000 0.00000 2 > 58: DRAW_POLYLINE
0192 0.03000 0.00000 3 ApgCii.#getPointsByNames{
0193 0.03200 0.00200 3 }
0194 0.03200 0.00000 2 }
0195 0.03200 0.00000 2 ApgCii.#drawPolyLine{
0196 0.03200 0.00000 2 > 59: DRAW_POLYLINE
0197 0.03200 0.00000 3 ApgCii.#getPointsByNames{
0198 0.03200 0.00000 3 }
0199 0.03200 0.00000 2 }
0200 0.03200 0.00000 2 ApgCii.groupEnd_{
0201 0.03400 0.00200 2 > 60: GROUP_END
0202 0.03400 0.00000 2 }
0203 0.03400 0.00000 2 ApgCii.pushLayer_{
0204 0.03400 0.00000 2 > 61: PUSH_LAYER - Layer_Debug
0205 0.03400 0.00000 2 }
0206 0.03400 0.00000 1 }

Instructions

{"type":"SETUP_BEGIN"}
{"type":"SET_NAME", "name":"Pedestrian doors"}
{"type":"SETUP_END"}
{"type":"NEW_POINT", "name":"ZERO", "x":0, "y":0}
{"type":"NEW_POINT", "name":"Door1_O", "x":200, "y":200}
{"type":"GROUP_BEGIN", "name":"Door1"}
{"type":"NEW_POINT_DELTA", "name":"Door1_BL", "origin":"Door1_O", "w":0, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door1_BR", "origin":"Door1_BL", "w":800, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door1_TR", "origin":"Door1_BR", "w":0, "h":2250}
{"type":"NEW_POINT_DELTA", "name":"Door1_TL", "origin":"Door1_TR", "w":-800, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door1_ML", "origin":"Door1_TL", "w":0, "h":-1125}
{"type":"NEW_POINT_DELTA", "name":"Door1_MR", "origin":"Door1_TR", "w":0, "h":-1125}
{"type":"NEW_POINT_DELTA", "name":"Door1_TO", "origin":"Door1_TR", "w":-80, "h":80}
{"type":"NEW_POINT_DELTA", "name":"Door1_BO", "origin":"Door1_BR", "w":-80, "h":-80}
{"type":"DRAW_RECTANGLE_SIZE", "origin":"Door1_BL", "w":800, "h":2250}
{"type":"DRAW_POLYLINE", "points":["Door1_TL", "Door1_MR", "Door1_BL"], "strokeStyle":"Foreground"}
{"type":"DRAW_POLYLINE", "points":["Door1_TL", "Door1_TO", "Door1_BO", "Door1_BL"], "strokeStyle":"Hidden"}
{"type":"GROUP_END"}
{"type":"NEW_POINT", "name":"Door2_O", "x":2000, "y":200}
{"type":"GROUP_BEGIN", "name":"Door2"}
{"type":"NEW_POINT_DELTA", "name":"Door2_BL", "origin":"Door2_O", "w":0, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door2_BR", "origin":"Door2_BL", "w":800, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door2_TR", "origin":"Door2_BR", "w":0, "h":1800}
{"type":"NEW_POINT_DELTA", "name":"Door2_TL", "origin":"Door2_TR", "w":-800, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door2_ML", "origin":"Door2_TL", "w":0, "h":-900}
{"type":"NEW_POINT_DELTA", "name":"Door2_MR", "origin":"Door2_TR", "w":0, "h":-900}
{"type":"NEW_POINT_DELTA", "name":"Door2_TO", "origin":"Door2_TR", "w":-80, "h":-80}
{"type":"NEW_POINT_DELTA", "name":"Door2_BO", "origin":"Door2_BR", "w":-80, "h":80}
{"type":"DRAW_RECTANGLE_SIZE", "origin":"Door2_BL", "w":800, "h":1800}
{"type":"DRAW_POLYLINE", "points":["Door2_TL", "Door2_MR", "Door2_BL"], "strokeStyle":"HiddenLarge"}
{"type":"DRAW_POLYLINE", "points":["Door2_TL", "Door2_TO", "Door2_BO", "Door2_BL"], "strokeStyle":"Hidden"}
{"type":"GROUP_END"}
{"type":"NEW_POINT", "name":"Door3_O", "x":3400, "y":50}
{"type":"GROUP_BEGIN", "name":"Door3"}
{"type":"NEW_POINT_DELTA", "name":"Door3_BL", "origin":"Door3_O", "w":0, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door3_BR", "origin":"Door3_BL", "w":780, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door3_TR", "origin":"Door3_BR", "w":0, "h":2150}
{"type":"NEW_POINT_DELTA", "name":"Door3_TL", "origin":"Door3_TR", "w":-780, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door3_ML", "origin":"Door3_TL", "w":0, "h":-1075}
{"type":"NEW_POINT_DELTA", "name":"Door3_MR", "origin":"Door3_TR", "w":0, "h":-1075}
{"type":"NEW_POINT_DELTA", "name":"Door3_TO", "origin":"Door3_TL", "w":78, "h":78}
{"type":"NEW_POINT_DELTA", "name":"Door3_BO", "origin":"Door3_BL", "w":78, "h":-78}
{"type":"DRAW_RECTANGLE_SIZE", "origin":"Door3_BL", "w":780, "h":2150}
{"type":"DRAW_POLYLINE", "points":["Door3_TR", "Door3_ML", "Door3_BR"], "strokeStyle":"Foreground"}
{"type":"DRAW_POLYLINE", "points":["Door3_TR", "Door3_TO", "Door3_BO", "Door3_BR"], "strokeStyle":"Hidden"}
{"type":"GROUP_END"}
{"type":"NEW_POINT", "name":"Door4_O", "x":4500, "y":0}
{"type":"GROUP_BEGIN", "name":"Door4"}
{"type":"NEW_POINT_DELTA", "name":"Door4_BL", "origin":"Door4_O", "w":0, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door4_BR", "origin":"Door4_BL", "w":900, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door4_TR", "origin":"Door4_BR", "w":0, "h":2050}
{"type":"NEW_POINT_DELTA", "name":"Door4_TL", "origin":"Door4_TR", "w":-900, "h":0}
{"type":"NEW_POINT_DELTA", "name":"Door4_ML", "origin":"Door4_TL", "w":0, "h":-1025}
{"type":"NEW_POINT_DELTA", "name":"Door4_MR", "origin":"Door4_TR", "w":0, "h":-1025}
{"type":"NEW_POINT_DELTA", "name":"Door4_TO", "origin":"Door4_TL", "w":90, "h":-90}
{"type":"NEW_POINT_DELTA", "name":"Door4_BO", "origin":"Door4_BL", "w":90, "h":90}
{"type":"DRAW_RECTANGLE_SIZE", "origin":"Door4_BL", "w":900, "h":2050}
{"type":"DRAW_POLYLINE", "points":["Door4_TR", "Door4_ML", "Door4_BR"], "strokeStyle":"HiddenLarge"}
{"type":"DRAW_POLYLINE", "points":["Door4_TR", "Door4_TO", "Door4_BO", "Door4_BR"], "strokeStyle":"Hidden"}
{"type":"GROUP_END"}
{"type":"PUSH_LAYER", "name":"Layer_Debug"}

CAD State

settings

{
  "name": "Pedestrian doors",
  "viewBox": {
    "canvasWidth": 1000,
    "canvasHeight": 562.5,
    "viewPortWidth": 10000,
    "viewPortHeight": 5625,
    "originXDisp": 1000,
    "originYDisp": 562.5
  },
  "background": {
    "draw": true,
    "strokeWidth": 4,
    "strokeColor": "#888888",
    "fillColor": "white"
  },
  "foreGround": {
    "draw": true,
    "strokeWidth": 4,
    "strokeColor": "black",
    "fillColor": "black"
  },
  "grid": {
    "mode": "Lines",
    "gridStep": 100,
    "gridStroke": {
      "color": "green",
      "width": 1,
      "dashPattern": [
        10,
        90
      ],
      "dashOffset": 5
    },
    "drawMajors": true,
    "majorEvery": 1000,
    "majorGridStroke": {
      "color": "cyan",
      "width": 2,
      "dashPattern": [
        10,
        90
      ],
      "dashOffset": 5
    }
  },
  "cartesians": {
    "mode": "Normal",
    "axisStroke": {
      "color": "#888888",
      "width": 4
    },
    "drawTicks": true,
    "tickStroke": {
      "color": "cyan",
      "width": 2
    },
    "ticksStep": 100,
    "ticksSize": 25,
    "drawBigTicks": true,
    "bigTicksEvery": 1000,
    "bigTicksSize": 50,
    "drawBigTicksLables": true,
    "labelsTextStyleName": "CartesianLabel",
    "labelsStyle": {
      "font": "Courier New, Courier, monospace",
      "size": 100,
      "anchor": "middle",
      "italic": true,
      "aspectRatio": 0.6,
      "fill": {
        "color": "#888888",
        "opacity": 1
      }
    }
  },
  "debug": false
}

strokeStyles

[
  "None",
  "Background",
  "Foreground",
  "Grids",
  "Cartesian",
  "Debug",
  "Annotations",
  "Dimensions",
  "Symmetry",
  "Symmetry_Large",
  "Dotted",
  "DottedLarge",
  "Hidden",
  "HiddenLarge",
  "Cartouche",
  "HatchGray",
  "HatchBrown",
  "HatchGreen"
]

fillStyles

[
  "None",
  "Background",
  "Foreground",
  "Debug",
  "Hidden",
  "Dimensions",
  "Annotations",
  "Cartouche"
]

textStyles

[
  "Default",
  "Debug",
  "Mono",
  "Title",
  "Dimensions",
  "Annotations",
  "CartesianLabel"
]

gradients

[
  "LinearLeftToRightLightShadow",
  "LinearLeftToRightDarkShadow",
  "LinearTopToDownLightShadow",
  "LinearTopToDownDarkShadow"
]

patterns

[
  "BackGridLines",
  "BackGridLinesAsDots",
  "CartesianHorizontal",
  "CartesianVertical",
  "Cross1",
  "Cross2",
  "Saltire1",
  "Saltire2",
  "Diagonal1",
  "Diagonal2",
  "Floor1",
  "Floor2",
  "Brick1",
  "Brick2",
  "Roof1",
  "Roof2",
  "RoofTiles1",
  "RoofTiles2"
]

textures

[
  "Wood_Ash",
  "Wood_Oak"
]

blocks

[
  "mechArrow",
  "simpleArrow",
  "archArrow",
  "dotArrow"
]

layers

[
  "Layer_Background",
  "Layer_Grids",
  "Layer_Cartesians",
  "Layer_Annotations",
  "Layer_Dimensions",
  "Layer_Debug",
  "Layer_Hidden",
  "Layer_Zero",
  "Layer_Cartouche"
]

groups

[
  "Door1",
  "Door2",
  "Door3",
  "Door4"
]